1
不可变性与常量
AI034Lesson 3
00:00

静态类型语言中,不可变性是数据的基础状态,确保内存安全并实现可预测的执行。虽然变量可以被遮蔽或设为可变,但 常量 则更进一步地将一个值永久绑定到名称上。

1. 常量的严格性

与标准变量不同,标准变量通过 类型推断 让编译器推导出数据类型,而常量则必须明确声明 显式类型注解 (例如, : u32)。这确保了代码二进制文件内部具有严格的契约。

2. 编译时求值

常量不仅仅是不可变变量;它们在编译时就被计算并“固化”进程序的二进制文件中。这使得编译器能够在程序运行前就执行 常量表达式 (如 60 * 60 * 3)),从而优化性能。

let x = 5;类型推断const SECS: u32 = 60 * 3;强制类型编译时计算

3. 绝对不可变性

常量作为“唯一真实来源”。它们不能使用 mut 关键字变为可变,也不能在同一作用域内被遮蔽,从而确保程序的关键参数在整个执行过程中保持不变。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>